1. Field of the Invention
The present invention relates to network systems. More particularly, the present invention relates to transferring scheduling data from a plurality of disk storage devices to a network switch before transferring data associated with scheduled requests between the network switch and a plurality of host initiators.
2. Description of the Prior Art
Conventional disk drive storage systems typically employ a scheduling algorithm in order to optimize data throughput. For example, a scheduling algorithm may evaluate and prioritize access requests rather than service the requests on a “first come first serve” basis. The scheduling priority is typically based on certain temporal parameters of the disk drive, such as the radial position of the head with respect to the disk. A scheduling algorithm may, for example, service all of the access requests from the outer to inner diameter tracks before servicing access requests from the inner to outer diameter tracks, similar to an elevator in a building servicing all of the down requests before servicing up requests. This algorithm is appropriately referred to as the “elevator” algorithm.
It is known to use temporal parameters of a disk drive (e.g., the radial or circumferential position of the head) in order to perform the scheduling operations; however, these types of scheduling algorithms have in the past been implemented by a disk controller which has direct access to the temporal parameters. For example, U.S. Pat. No. 5,390,313 discloses a disk drive comprising a disk controller for scheduling access to multiple disks based on the circumferential position of the heads relative to the disks. Co-pending U.S. patent application Ser. No. 09/301,179 discloses a disk drive which provides head position information to a host computer so that the host microprocessor may execute the scheduling algorithm rather than the disk controller. U.S. Pat. No. 5,787,482 discloses a video server wherein access requests to a plurality of disk drives are scheduled based on an inferred radial position of the head within each disk drive. The radial position of the head is inferred based on commands previously sent to each disk drive. However, using inferred temporal parameters to implement the scheduling algorithm provides sub-optimal performance due to the error inherent in estimation. Further, it is difficult to minimize the variance in latency associated with generating the temporal parameters due to the estimation error as well as the variance in computing the temporal parameters, which further degrades performance of the scheduling algorithm. Consequently, scheduling algorithms based on inferred temporal parameters are sub-optimal with respect to the aggregate performance of a computer network, and particularly the number of input/output operations per second (IOPs) performed by each disk drive connected to the computer network.
There is, therefore, a need to improve upon the prior art techniques of scheduling access to a plurality of storage systems, such as a plurality of disk storage devices, connected to a computer network. In particular, there is a need to schedule access to a plurality of disk storage devices connected to a computer network in a manner which minimizes the variance in latency associated with generating the temporal parameters, thereby improving the computer network's aggregate performance.